With the advent of the Internet, electronic business and financial transactions have flourished. Virtual private networks now enable people to conduct business from anywhere in the world, at least anywhere an Internet connection is available. With cellular and satellite communication technology, Internet connections are available virtually everywhere. Network communication protocols, such as S-HTTP (Secure Hypertext Transport Protocol) and SSL (Secure Socket Layer), have been developed to enable secure communication links between two network devices. These technologies provide security in two forms—authentication and encryption. Authentication is important to verify that each device is who it claims to be. Encryption allows the devices to exchange data rendering that data useless to a third party. The security provides confidence in transmitting private financial, business, and personal data over a computer network.
In addition to desktop computers, workstations, and servers, modern computing environments often include lightweight handheld computing devices that fit into a pocket, purse, or briefcase. To enable true mobility for these devices, wireless network communication is required. Wireless network interface cards enable network communication within a particular geographic area such as an office complex. The mobile device must remain within range of a server to communicate. Cellular modems and Internet ready cellular telephones enable network communication between devices located most anywhere.
Existing secure network communication protocols such as SSL require a series of communications between two devices to establish a secure communication link between the devices. These communications are often referred to as a “handshake.” A handshake allows the network devices to authenticate one another while exchanging data needed to encrypt future communications. FIG. 1 illustrates a typical handshake between a cellular enabled PDA (Personal Digital Assistant) 10 and a server 12. PDA 10 initiates the handshake communicating data to server 12. Server 12 responds sending data to PDA 10. Each communication can be referred to as a “pass.” Existing protocols require several passes to establish a secure connection. For example, one version of an SSL handshake requires the following steps:                PDA 10 initiates communication requesting a digital certificate from server 12. A digital certificate includes a public key used to encrypt a reply as well as electronic data used to authenticate server 12.        Server 12 returns its certificate and requests a digital certificate from PDA 10.        With the server's certificate, PDA 10 authenticates server 12 and returns its own certificate. With the PDA's certificate, server 12 authenticates PDA 10.        PDA 10 then generates a symmetric encryption key. Using the public key from the server's certificate, PDA 10 encrypts the symmetric encryption key and then sends it to server 12. Using its own private key, server 12 decrypts the symmetric encryption key.        
The handshake is complete. PDA 10 and server 12 have been authenticated. Future communications between PDA 10 and server 12 are encrypted and decrypted using the symmetric encryption key. For example, PDA 10 can generate a request for server (server request) to return data relating to a bank account for instance. PDA 10 encrypts the server request with the symmetric encryption key and sends it to server 12. Server 12 decrypts the server requests and generates a response to the server request (client response). Server 12 then encrypts the client response with the symmetric encryption key and returns it to PDA 12 which decrypts and displays the client response. Whenever the network connection between PDA 10 and server 12 is broken, the handshake must be repeated in order to authenticate the devices. When communicating over a cellular connection, each pass of a handshake requires approximately fifteen seconds. Consequently, a handshake typically requires anywhere from forty-five to seventy seconds, before a secure connection can be established or reestablished.
Wireless network connections can be unreliable. They are often broken requiring a secure connection to be frequently reestablished. The resulting delay of forty-five to seventy seconds required for each handshake renders secure cellular network communication annoying if not inefficient or unworkable. What is needed is a more efficient method for establishing and secure network communication that eliminates the need for a handshake as described above each time the connection is broken.